﻿// fix_arpa_by_words.cpp: 定义控制台应用程序的入口点。
//

#ifndef _FIX_ARPA_BY_WORDS_H_
#define _FIX_ARPA_BY_WORDS_H_ 1


#include <boost/algorithm/string.hpp>
#include <boost/filesystem.hpp>
#include <boost/regex.hpp>
#include <unordered_map>
#include <unordered_set>
#include <string>
#include <iostream>
#include <fstream>
#include <sstream>
#include <vector>

#define  BOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE
using namespace boost;
using namespace std;

bool CheckFileOrDirectory(const char* directory);


int ReadWords(const char* words_name,
	std::unordered_map<string, string>& words);

int ProcessArpa(const char* arap_name,
	const unordered_map<string, string>& words);


std::vector<string> SplitString(const std::string& entry);

bool IsSpecialArpaToken(const char* sub_token);

int FixArpaByWords(const char* arpa, const char* words);


#endif

